# 设置项目名称
cmake_minimum_required(VERSION 3.10)

# 项目名称和版本
project(PhoneBook VERSION 1.0 LANGUAGES CXX)

# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

# 添加头文件目录（include 文件夹）
include_directories(${PROJECT_SOURCE_DIR}/include)

# 查找所有的源文件
file(GLOB SOURCES "src/*.cpp")

# 创建可执行文件
add_executable(phonebook ${SOURCES})

# 可选：如果你需要链接其他库，可以在这里添加
# target_link_libraries(phonebook <some-libraries>)

# 配置 clang-format
# 通过 CMake 格式化源代码
# 你可以在 CI/CD 中集成此功能，或作为构建过程的一部分
add_custom_target(format
    COMMAND clang-format -i ${SOURCES}
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
    COMMENT "Running clang-format"
)

# 可选：添加一个测试目标
# 如果你有测试框架，可以添加一个测试目标并集成到构建中
# enable_testing()
# add_test(NAME example_test COMMAND your_test_executable)
